﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;

using AALib.Input;
using AALib.Audio;

namespace AALib.Screen
{
    public abstract class Screen : DrawableGameComponent
    {
        private SpriteBatch m_spritebatch = null;
        protected ScreenManager m_screenManager = null;

      //  public AudioManager audioManager;

        public string m_nextScreen = "";

        public bool m_changeState = false;

        public SpriteBatch Spritebatch
        {
            get { return m_spritebatch; }
        }

        public Screen(ScreenManager p_screenManager, SpriteBatch p_spritebatch, Game p_game)
            : base(p_game)
        {
            this.m_screenManager = p_screenManager;
            this.m_spritebatch = p_spritebatch;
        }

        public abstract void Shutdown();
        public abstract string GetNextScreen();
        public abstract void HandleInput(ref InputManager inputManager);
    }
}
